--- startkde	2012-12-08 19:03:57.264176845 +0400
+++ startkde.gentoo	2012-12-08 19:42:37.448228534 +0400
@@ -45,6 +45,16 @@
 # because we still need to do some cleanup.
 trap '[startkde] echo GOT SIGHUP' HUP
 
+# Gentoo: setup environment, filter other slotted KDE installs from PATH
+_KDEDIR=@REPLACE_PREFIX@
+#export KDEDIRS=${_KDEDIR}:/usr:/usr/local
+export PATH=${_KDEDIR}/bin:$(echo ${PATH} | sed 's/$/:/g;s#/usr/trinity/[^/]*/s\?bin/\?:##g;s/:$//g')
+export ROOTPATH=${_KDEDIR}/sbin:${_KDEDIR}/bin:$(echo ${PATH} | sed 's/$/:/g;s#/usr/trinity/[^/]*/s\?bin/\?:##g;s/:$//g')
+export LDPATH=@REPLACE_LIBS@:${LDPATH}
+export XDG_DATA_DIRS=${_KDEDIR}/share:$(echo ${XDG_DATA_DIRS} | sed 's/$/:/g;s#/usr/trinity/[^/]*/share/\?:##g;s/:$//g')
+unset _KDEDIR
+# Gentoo part ends
+
 # Check if a TDE session is already running.
 if kcheckrunning >/dev/null 2>&1; then
   echo "[startkde] TDE seems to be already running on this display."
@@ -52,6 +62,20 @@
   exit 1
 fi
 
+# Gentoo part:
+# Scrapped old TDE-x -> TDE-y update code, but keep symlink code
+pushd ${HOME}
+if [ -L .trinity -o ! -e .trinity ]; then
+	# handle ~/.trinity* dirs - separate ones for separate trinity instances
+	rm -f .trinity
+	if [ ! -e .trinity-3.5 ]; then
+		mkdir .trinity-3.5
+	fi
+	ln -sf .trinity-3.5 .trinity
+fi
+popd
+# Gentoo part ends
+
 # Set the background color.
 # The standard X background is nasty, causing moire effects and exploding
 # people's heads. We use colours from the standard TDE palette for those with
@@ -435,6 +459,13 @@
   done
 done
 
+# Source scripts in /etc/X11/xinit/xinitrc.d/ for system-level defined stuff
+if test -d "/etc/X11/xinit/xinitrc.d/"; then
+  for file in "/etc/X11/xinit/xinitrc.d/"*; do
+    test -x "$file" && . "$file"
+  done
+fi
+
 # Activate the TDE font directories.
 #
 # There are 4 directories that may be used for supplying fonts for TDE.
@@ -688,7 +719,7 @@
 # Clean up
 $KDEDIR/bin/kdeinit_shutdown
 $KDEDIR/bin/dcopserver_shutdown --wait
-$KDEDIR/bin/artsshell -q terminate
+[ -x ${KDEDIR}/bin/artsshell ] && $KDEDIR/bin/artsshell -q terminate
 # KDE4 support
 if [ -f /usr/bin/kdeinit4_shutdown ]; then
   /usr/bin/kde4 kdeinit4_shutdown 2>/dev/null
